package ludoxia.classe
{
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.Loader;
	import flash.display.Sprite;
	import flash.net.URLRequest;

	public class joueur
	{
		[Embed (source="joueur.jpg")]
		public const JOUEUR_BMP : Class;
		public const JOUEUR_DATA : BitmapData = (new JOUEUR_BMP() as Bitmap).bitmapData;
		public var SpriteJoueur : Sprite;
		
		private var _nom:String;
		private var _score:uint;
		//private var _positionActuel:position;
		private var _x:int;
		private var _y:int;
		private var _vitesse:uint;
		private var _image:String;

		
		//composant flash
		
		public function joueur()
		{
			
			_score = 0;
			
			SpriteJoueur = new Sprite();
			SpriteJoueur.graphics.beginBitmapFill(JOUEUR_DATA, null, false, false);
			SpriteJoueur.graphics.drawRect(0,0, JOUEUR_DATA.width, JOUEUR_DATA.height); 
			SpriteJoueur.graphics.endFill();
			
			PositionX = 2;
			PositionY = 2;
			
			_vitesse = 1;

		}
		
		/* Méthodes */
		public function Avancer(Avancement:int = 1):void{
			_x = (_x + Avancement) % terrain.largeur;
		}
		
		public function Tourner(Hauteur:int):void{

			if ((Hauteur > 0) && (_y < (terrain.hauteur - 1)))
				PositionY += Hauteur;
			else if ((Hauteur < 0) && (_y > 0))
				PositionY += Hauteur;
			
			//appeler une méthode composant flash
		}
		/* Fin Méthodes */
		
		/* Propriétés */
		public function get Nom():String{
			return _nom;
		}
		
		public function set Nom(value:String):void{
			_nom = value;
		}
		
		public function get Score():uint{
			return _score;
		}
		
		public function set Score(value:uint):void{
			_score = value;
		}
		
		public function get Vitesse():uint{
			return _vitesse;
		}
		
		public function set Vitesse(value:uint):void{
			_vitesse = value;
		}
		
		public function get PositionX():int{
			return _x;
		}
		
		public function set PositionX(value:int):void{
			_x = value;
			SpriteJoueur.x = (terrain.largeur - _x) * terrain.correspondancePixel;
		}
		
		public function get PositionY():int{
			return _y;
		}
		
		public function set PositionY(value:int):void{
			_y = value;
			SpriteJoueur.y = _y * terrain.correspondancePixel;
		}
		/* Fin Propriétés */
	}
}